<%@ page import="com.demo.bean.Person" %>
<%@ page import="java.util.*" %><%--
  Created by IntelliJ IDEA.
  User: WuLiangHang
  Date: 2021/3/11
  Time: 10:26
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
<%--
EL表达式 输出BEAN的普通属性 数组属性 集合属性 map集合属性
--%>
<%
    Person p = new Person();
    p.setName("张三");
    p.setPhones(new String[]{"12345", "56789", "123456789"});
    //多态
    List<String> cities = new ArrayList<>();
    cities.add("北京");
    cities.add("上海");
    cities.add("广州");
    cities.add("深圳");
    p.setCities(cities);
    Map<String, Object> map = new HashMap<>();
    map.put("key1", "value1");
    map.put("key2", "value2");
    map.put("key3", "value3");
    p.setMap(map);
    pageContext.setAttribute("p", p);
%>
<%
    Person person = (Person) pageContext.getAttribute("p");
%>
<h1>JSP输出</h1>
输出Person:<%=person%> <br/>
输出Person的name属性:<%=person.getName()%><br/>
输出Person的phones数组属性:<%=Arrays.asList(person.getPhones()) %> <br/>
输出Person的cities集合中的元素值:<%=person.getCities()%> <br/>
输出Person的List集合中个别元素值:<%=person.getCities().get(1)%><br/>
输出Person的Map集合:<%=person.getMap()%> <br/>
输出Person的Map集合中某个key的值:<%=person.getMap().get("key2")%><br/>
<h1>EL表达式</h1>
输出Person: ${p}<br/>
输出Person的name属性:${p.name}<br/>
输出Person的phones数组属性:${p.phones[0]} <br/>
输出Person的cities集合中的元素值:${p.cities} <br/>
输出Person的List集合中个别元素值:${p.cities[1]}<br/>
输出Person的Map集合:${p.map} <br/>
输出Person的Map集合中某个key的值:${p.map.key2}<br/>
</body>
</html>
